home *** CD-ROM | disk | FTP | other *** search
/ Quick PC 61 / Quick PC 61.iso / I386 / SASETUP.MSI / F2019_appmgr.mof < prev    next >
Encoding:
Text File  |  2003-02-21  |  9.3 KB  |  322 lines

  1. ///////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright(C) 1999-2000 Microsoft Corporation all rights reserved.
  4. //
  5. // Module:      appmgr.mof
  6. //
  7. // Description: Appliance Manager WMI classes
  8. //
  9. ///////////////////////////////////////////////////////////////////////////////
  10.  
  11. #pragma namespace("\\\\.\\ROOT\\CIMV2")
  12.  
  13. ///////////////////////////////////////////////////////////////////////////////
  14. // Declare our provider as an instance, method and event producer provider
  15.  
  16. instance of __Win32Provider as $P
  17. {
  18.     Name    = "ApplianceManager" ;
  19.     ClsId   = "{BAF0B9D0-BF0B-11D2-90B6-00AA00A71DCA}";
  20.     InitializationReentrancy = 0;
  21.     PerUserInitialization = FALSE;
  22. } ;    
  23.  
  24. instance of __MethodProviderRegistration  
  25. {    
  26.     Provider = $P;  
  27. };
  28.  
  29. instance of __InstanceProviderRegistration
  30. {
  31.     Provider = $P;
  32.     SupportsPut = FALSE;
  33.     SupportsGet = TRUE;
  34.     SupportsDelete = FALSE;
  35.     SupportsEnumeration = TRUE;
  36.     QuerySupportLevels = NULL;
  37. };
  38.  
  39. instance of __EventProviderRegistration  
  40. {    
  41.     Provider = $P;  
  42.     EventQueryList = { "select * from Microsoft_SA_AlertEvent" };
  43. };
  44.  
  45.  
  46. /////////////////////////////////////////////////////////////////////
  47. // Appliance Manager Classes 
  48.  
  49. /////////////////////////////////////////////////////////////////////
  50. class Microsoft_SA_Component : CIM_LogicalElement
  51. {
  52.  
  53. };
  54.  
  55. /////////////////////////////////////////////////////////////////////
  56. [dynamic, singleton, provider("ApplianceManager")] 
  57. class Microsoft_SA_Manager : Microsoft_SA_Component
  58. {
  59.     string      CurrentBuildNumber;
  60.     string      ProductId;
  61.  
  62.     [Implemented] sint32 RaiseAlert(
  63.                                       [in]  sint32 AlertType,
  64.                                       [in]  sint32 AlertID, 
  65.                                       [in]  string AlertSource, 
  66.                                       [in]  string AlertLog,
  67.                                       [in]  sint32 TimeToLive,
  68.                                       [in]  string ReplacementStrings[],
  69.                                       [in]  uint8  AlertData[], 
  70.                                       [in]  sint32 AlertFlags,
  71.                                       [out] sint32 Cookie
  72.                                     );
  73.  
  74.     [Implemented] sint32 ClearAlert(
  75.                                     [in] sint32 Cookie
  76.                                   );
  77.  
  78.     [Implemented] sint32 ClearAlertAll(
  79.                                         [in]  sint32 AlertID,
  80.                                         [in]  string AlertLog
  81.                                       );
  82.  
  83.     [Implemented] sint32 ResetAppliance(
  84.                                         [in]  boolean PowerOff
  85.                                        );
  86. };
  87.  
  88. /////////////////////////////////////////////////////////////////////
  89. [dynamic, provider("ApplianceManager")] 
  90. class Microsoft_SA_Alert : Microsoft_SA_Component
  91. {
  92.     [key] uint32         Cookie;
  93.     sint32               AlertType;
  94.     sint32               AlertID;
  95.     [Not_Null] string    AlertSource;
  96.     [Not_Null] string    AlertLog;
  97.     string               ReplacementStrings[];
  98.     sint32               TimeToLive;
  99.     uint8                AlertData[];
  100.     sint32               AlertFlags;
  101. };
  102.  
  103. /////////////////////////////////////////////////////////////////////
  104. [dynamic, provider("ApplianceManager")] 
  105. class Microsoft_SA_Service : Microsoft_SA_Component
  106. {
  107.     [key] string         ServiceName;
  108.     [Not_Null] string    ServiceProgID;
  109.     boolean              CanDisable;
  110.     boolean              IsEnabled;
  111.     sint32               Merit;
  112.  
  113.     [Implemented] sint32 Enable();
  114.     [Implemented] sint32 Disable();
  115. };
  116.  
  117. /////////////////////////////////////////////////////////////////////
  118. [dynamic, provider("ApplianceManager")] 
  119. class Microsoft_SA_Task : Microsoft_SA_Component
  120. {
  121.     [key] string         TaskName;
  122.     string               TaskExecutables;
  123.     boolean              CanDisable;
  124.     boolean              IsEnabled;
  125.     boolean              IsSingleton;
  126.     boolean              IsAvailable;
  127.     sint32               MaxExecutionTime;
  128.     sint32               RestartAction;
  129.  
  130.     [Implemented] sint32 Enable();
  131.     [Implemented] sint32 Disable();
  132.     [Implemented] sint32 Execute();
  133. };
  134.  
  135. /////////////////////////////////////////////////////////////////////
  136. [dynamic, provider("ApplianceManager")] 
  137. class Microsoft_SA_User : Microsoft_SA_Component
  138. {
  139.     [key] string  UserName;
  140.     boolean       IsUserAdmin;
  141.     boolean       CanDisable;
  142.     boolean       IsEnabled; 
  143.     string        UserSid;
  144.     string        FullName;
  145.  
  146.     [Implemented] sint32 Enable();
  147.     [Implemented] sint32 Disable();
  148. };
  149.  
  150.  
  151. /////////////////////////////////////////////////////////////////////
  152. //
  153. // Server Appliance Event Classes
  154.  
  155. class Microsoft_SA_Event : __ExtrinsicEvent
  156. {
  157.  
  158. };
  159.  
  160. class Microsoft_SA_AlertEvent : Microsoft_SA_Event
  161. {
  162.  
  163. };
  164.  
  165.  
  166. // Alert Condition Reported
  167.  
  168. class Microsoft_SA_RaiseAlert : Microsoft_SA_AlertEvent
  169. {
  170.     [key]  uint32        Cookie;
  171.     sint32               AlertType;
  172.     sint32               AlertID;
  173.     [Not_Null] string    AlertSource;
  174.     [Not_Null] string    AlertLog;
  175.     string               ReplacementStrings[];
  176. };
  177.  
  178.  
  179. // Alert Condition Cleared
  180.  
  181. class Microsoft_SA_ClearAlert : Microsoft_SA_AlertEvent
  182. {
  183.     [key]  uint32        Cookie;
  184. };
  185.  
  186. //////////////////////////////////////////////////////////////////////////
  187. //
  188. // Server Appliance Resource Event Classes
  189. //
  190. //////////////////////////////////////////////////////////////////////////
  191.  
  192. class Microsoft_SA_ResourceEvent : Microsoft_SA_Event
  193. {
  194.     [key]    string    UniqueName;    // Name of the appliance resource 
  195.                     // being monitored
  196.     uint32    DisplayInformationID;    // ID for the string or graphic  
  197.                     // resource value
  198.     uint32    CurrentState;        // current state - this is not a 
  199.                     // required field
  200. };
  201.  
  202. //////////////////////////////////////////////////////////////////////////////
  203. // Disk Manager MOF declarations.
  204. // Disk Manager MOF classes are derived from AppMgr
  205. // MOF classes. However the MOF compiler does not yet support the C #include
  206. // directive to include base class declarations.
  207.  
  208. // Declare our provider as an instance and method provider
  209.  
  210. instance of __Win32Provider as $Q
  211. {
  212.     Name    = "Microsoft_SA_DiskProvider" ;
  213.     ClsId   = "{E8F86F4D-DDA8-11D2-8CC0-00105A999250}";
  214. } ;    
  215.  
  216. instance of __MethodProviderRegistration  
  217. {    
  218.     Provider = $Q;  
  219. };
  220.  
  221. instance of __InstanceProviderRegistration
  222. {
  223.     Provider = $Q;
  224.     SupportsPut = FALSE;
  225.     SupportsGet = TRUE;
  226.     SupportsDelete = FALSE;
  227.     SupportsEnumeration = TRUE;
  228.     QuerySupportLevels = NULL;
  229. };
  230.  
  231. /////////////////////////////////////////////////////////////////////
  232. // Disk Manager Classes 
  233.  
  234. /////////////////////////////////////////////////////////////////////
  235. // 
  236. // Disk Manager class
  237. //
  238. [ singleton, dynamic:ToInstance, provider("Microsoft_SA_DiskProvider") ] 
  239. class Microsoft_SA_DiskManager : Microsoft_SA_Component
  240. {
  241.     [Implemented, static] sint32 DiskConfigure( 
  242.         [in] sint32 FormatSlots, 
  243.         [in] sint32 RecoverSlots,
  244.         [in] sint32 DeleteShadowSlots,
  245.         [in] sint32 MirrorSlots,
  246.         [out] sint32 Reboot
  247.         );
  248.         
  249.     [Implemented, static] sint32 CanRecover(
  250.         [in] sint32 RecoverSlot, 
  251.         [out] sint32 Reboot,
  252.         [out] sint32 RequiredSize
  253.         );
  254.     
  255.     [Implemented, static] sint32 CanMirror(
  256.         [in] sint32 MirrorSlots, 
  257.         [out] sint32 Reboot,
  258.         [out] sint32 RequiredSize
  259.         );
  260. };
  261.  
  262.  
  263. /////////////////////////////////////////////////////////////////////
  264. // 
  265. // Abstraction of a physical disk
  266. //
  267. [ dynamic, provider("Microsoft_SA_DiskProvider") ] 
  268. class Microsoft_SA_Disk : Microsoft_SA_Component
  269. {
  270.     [key] string        DiskName;
  271.     sint32              DiskType;
  272.     sint32              DiskStatus;
  273.     sint32              DiskMirrorStatus;
  274.     sint32              DriveMask;
  275.     sint32              Slot;
  276.     sint32              DiskSize;
  277.     sint32              BackupDataMask;
  278. };
  279.  
  280.  
  281. /////////////////////////////////////////////////////////////////////
  282. //
  283. // Permanent event consumer that looks out for the event thrown
  284. // in response to alerts being cleared by the UI.
  285. // This one just captures 'Setup Client PC' alerts
  286. //
  287. instance of __Win32Provider as $R
  288. {
  289.     Name    = "ClearClientConfigAlertConsumer" ;
  290.     ClsId   = "{58ED94D1-1E24-11d3-85B4-00104BCC1ECB}";
  291. };
  292.  
  293. instance of __EventConsumerProviderRegistration
  294. {
  295.     Provider = $R;
  296.     ConsumerClassNames = {"ClearClientConfigAlertEventConsumerClass"};
  297. };
  298.  
  299. instance of __EventFilter
  300. {
  301.     Name  = "ClearClientConfigAlertEventFilter";
  302.     Query = "SELECT * FROM Microsoft_SA_ClearAlert";
  303.     QueryLanguage = "WQL";
  304. };
  305.  
  306. class ClearClientConfigAlertEventConsumerClass : __EventConsumer
  307. {
  308.     [key] string Name;
  309. };
  310.  
  311. // Make an instance.
  312. instance of ClearClientConfigAlertEventConsumerClass
  313. {
  314.     Name = "ClearClientConfigAlert";
  315. };
  316.  
  317. instance of __FilterToConsumerBinding
  318. {
  319.     Consumer = "ClearClientConfigAlertEventConsumerClass=\"ClearClientConfigAlert\"";
  320.     Filter   = "__EventFilter=\"ClearClientConfigAlertEventFilter\"";
  321. };
  322.